package com.yuyou.fn.educational.service;

import com.github.wens.framework.service.ISuperService;
import com.github.wens.mybatisplus.plugins.Page;
import com.yuyou.fn.educational.entity.Product;
import com.yuyou.fn.educational.vo.ProductQueryVo;
import com.yuyou.fn.educational.vo.ProductSaveOrUpdateVo;
import com.yuyou.fn.platform.permission.DataPermission;

import java.util.List;

/**
 *
 * Product 表数据服务层接口
 *
 */
public interface IProductService extends ISuperService<Product,Long> {



    Page<Product> findProductByQueryForManage(ProductQueryVo productQueryVo, DataPermission dataPermission, int pageNo, int pageSize);

    Page<Product> findProductByQueryForUse(ProductQueryVo productQueryVo, DataPermission dataPermission, int pageNo, int pageSize);

    void saveOrUpdateProduct(ProductSaveOrUpdateVo productSaveOrUpdateVo);

    void changeProductStatus(Long productId, Integer status);

    String findProductNameById(Long productId);

    Product findProductByNameAreaTeamId(String productName, Long areaTeamId);

    void deleteProduct(Long productId);

    List<Product> findBaseProductForUse(DataPermission dataPermission);

    List<Product> findBaseProductByAreaTeamId(Long areaTeamId);
}